﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using pryConvertTXT.Forms;
//using Seguridad.Clases_DAO;
using pryConvertTXT.BE;
using System.Net;
using System.IO;
using System.Collections;
using System.Configuration;
using Seguridad.Clases_DAO;

namespace Seguridad
{
    public partial class frmLogin : Form
    {
        //clsUsuarioDAO objUsuarioDAO = new clsUsuarioDAO();
         

        public frmLogin()
        {
            InitializeComponent();

            clsModulo.listEmpresasBE = null;
            clsModulo.Path = null;
            clsModulo.Fecha = Convert.ToDateTime("01/01/1999");

            

        }

        private void btnAceptar_Click(object sender, EventArgs e)
        {
            try
            {
                clsUsuarioDAO objUsuarioDAO = new clsUsuarioDAO();

                if (ValidarTxt())
                {
                    String USER = txtLogin.Text.Trim();
                    String PASS = txtPassword.Text;

                    var q = objUsuarioDAO.listar().Where(x => x.co_Usuario == USER).ToList();
                    if (q.Count == 1)
                    {
                        if (PASS == q[0].pa_Password)
                        {
                            clsModulo.listEmpresasBE = new List<EmpresaClienteBE>();

                            frmMain frm = new frmMain();
                            frm.Show();
                            this.Hide();
                        }
                        else
                        {
                            MessageBox.Show("El Usuario no existe o el password es incorrecto.", "Inicio de session", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        }
                    }
                    else
                    {
                        MessageBox.Show("El Usuario no existe o el password es incorrecto.", "Inicio de session", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }

                }

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

        private void btnCancelar_Click(object sender, EventArgs e)
        {
            clsModulo.BorrarArchivo(clsModulo.Path);
            Application.Exit();
        }

        private Boolean ValidarTxt()
        {
            lblLogin.Visible = txtLogin.Text.Trim() == "";
            lblPassword.Visible = txtPassword.Text == "";

            if (txtLogin.Text.Trim() == "" || txtPassword.Text == "")
                return false;
            else
                return true;

        }

        private void frmLogin_Load(object sender, EventArgs e)
        {
            try
            {
                clsModulo.listEmpresasBE = null;
                clsModulo.Path = null;
                clsModulo.Fecha = Convert.ToDateTime("01/01/1999");

                clsModulo.Path = Path.GetTempFileName();
                WebClient Client = new WebClient();
                Client.DownloadFile("https://proyecto-convertidor-txt.googlecode.com/svn/trunk/pryConvertTXT/Seguridad/ContadorUno/sys.ini", clsModulo.Path);


                if (File.Exists(clsModulo.Path))
                {
                    StreamReader objReader = new StreamReader(clsModulo.Path);

                    String sLine = "";
                    ArrayList arrText = new ArrayList();

                    do
                    {
                        sLine = objReader.ReadLine();
                        if ((sLine != null))
                        {
                            arrText.Add(sLine);
                        }
                    } while (!(sLine == null));
                    objReader.Close();

                    int index = 0;
                    foreach (object row in arrText)
                    {
                        String[] ItemArray = row.ToString().Split(';');

                        if (index == 0)
                        {
                            if (ItemArray[3] == "1")
                            {
                                lblActualisar.Visible = true;
                            }
                            break;
                        }

                    }
                }




            }
            catch (Exception ex) {

                clsModulo.listEmpresasBE = null;
                clsModulo.Path = null;
                clsModulo.Fecha = Convert.ToDateTime("01/01/1999");
            }
        }

        private void frmLogin_FormClosing(object sender, FormClosingEventArgs e)
        {
            clsModulo.BorrarArchivo(clsModulo.Path);
            Application.Exit();
        }

        private void groupBox1_Enter(object sender, EventArgs e)
        {

        }
    }
}
